From: Keir Fraser Date: Tue, 6 Jul 2010 15:49:59 +0000 (+0100) Subject: rombios: pause for a keypress after a failed boot X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~11837 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=5bcc7775a7b488d59cc885c5dee9694e89eb53eb;p=xen.git rombios: pause for a keypress after a failed boot rombios: inform the user and pause for a keypress after a failed boot rather than powering off immediately. Signed-off-by: Tim Deegan --- diff --git a/tools/firmware/rombios/rombios.c b/tools/firmware/rombios/rombios.c index 26a952f649..1c05d99e75 100644 --- a/tools/firmware/rombios/rombios.c +++ b/tools/firmware/rombios/rombios.c @@ -8243,7 +8243,27 @@ Bit16u seq_nr; write_word(ebda_seg, IPL_BOOTFIRST_OFFSET, 0xFFFF); /* Reset boot sequence */ write_word(ebda_seg, IPL_SEQUENCE_OFFSET, 0xFFFF); - } else if (bootdev == 0) BX_PANIC("No bootable device.\n"); + } else if (bootdev == 0) { + printf("\nNo bootable device.\n"); + printf("Reboot or press any key to retry."); + write_word(ebda_seg, IPL_SEQUENCE_OFFSET, 0xFFFF); +ASM_START + sti +ASM_END + { + Bit8u sc, ac; + while(!dequeue_key(&sc, &ac, 1)) { +ASM_START + hlt +ASM_END + } + } +ASM_START + cli +ASM_END + printf("\n\n"); + return; + } /* Translate from CMOS runes to an IPL table offset by subtracting 1 */ bootdev -= 1;